home *** CD-ROM | disk | FTP | other *** search
/ The Original Shareware 1.1 / The Original Shareware (WeMake CDs)(Volume 1.1)(CDs, Inc)(1993).iso / 23 / speedtpc.zip / SPEED.ASM next >
Assembly Source File  |  1987-08-16  |  2KB  |  51 lines

  1. TITLE   SPEED UTILITY
  2. .RADIX  16
  3. CODSG   SEGMENT
  4.         ASSUME  DS:CODSG, SS:CODSG ,CS:CODSG ,ES:CODSG
  5.         ORG     081H
  6. PARMS   DB      ?
  7.         ORG     100H
  8. START:
  9.         JMP     BEGIN
  10. MFAST   DB      'Now running in FAST mode$'
  11. MSLOW   DB      'Now running in SLOW mode$'
  12. BEGIN:
  13.         CLD
  14.         MOV     SI,OFFSET PARMS
  15. LOOP1:
  16.         LODSB                 ;get character from parms
  17.         CMP     AL,20         ;if its a blank
  18.         JE      LOOP1         ;go back and get another
  19.         AND     AL,0DF        ;not blank - force to upper case
  20.         CMP     AL,'F'        ; test for FAST
  21.         JE      FAST          ; yes
  22.         CMP     AL,'S'        ; test for SLOW
  23.         JE      SLOW          ; yes
  24. ASK:                          ; otherwise just inquire
  25.         IN      AL,61         ; look at port
  26.         TEST    AL,4          ; and test the bit
  27.         JZ      SAYSLOW       ; if off, slow mode
  28. SAYFAST:
  29.         MOV     DX,OFFSET MFAST
  30.         MOV     AH,9
  31.         INT     21H
  32.         INT     20H           ;terminate program
  33. SAYSLOW:
  34.         MOV     DX,OFFSET MSLOW
  35.         MOV     AH,9
  36.         INT     21H
  37.         INT     20H           ;terminate program
  38. FAST:   IN      AL,61           ;get port value
  39.         AND     AL,0FBH         ;mask off turbo bit
  40.         OUT     61,AL           ;make slow
  41.         IN      AL,61           ;get port value
  42.         XOR     AL,0C           ;flip turbo bit
  43.         OUT     61,AL           ;make fast
  44.         JMP     ASK             ;go to routine to display speed
  45. SLOW:   IN      AL,61           ;get port value
  46.         AND     AL,0FBH         ;mask off turbo bit
  47.         OUT     61,AL           ;make slow
  48.         JMP     ASK             ;go to routine to display speed
  49.         CODSG   ENDS
  50. END     START
  51.